package model.parser;

import java.io.File;
import java.util.List;

import model.lugares.Ciudad;

import org.jdom2.Document;
import org.jdom2.Element;

public class ParserCiudades extends Parser {

	
	private File archivo = new File("archivos xml/ciudades.xml");
	private Document documento;
	private Element nodoRaiz;
	private List<Element> listaCiudades;
	
	public ParserCiudades () {
		documento = super.crearDoc(documento, archivo,"archivos xml/ciudades.xml");
		nodoRaiz = documento.getRootElement();
		/* Obtenemos el nodo principal	 */
		
		listaCiudades = nodoRaiz.getChildren("ciudad");
	/* Creamos una lista con los nodos secundario	 */
}
	
public int getCantidadCiudades(){
	return (listaCiudades.size());
}
	
public String getNombreCiudadNumero(int i){
	Element nodo = (Element) listaCiudades.get(i);
	String nombre = nodo.getAttribute("nombre").getValue();
	return nombre;
}

public Ciudad getCiudadNumero(int i){

	Element nodo = (Element) listaCiudades.get(i);
	Ciudad ciudad = Ciudad.hidratar(nodo);

	return ciudad;
							
}

public Ciudad getCiudadPorNombre(String nombreC){
	int i=0;
	Element nodo = (Element) listaCiudades.get(i);
	String nombrePosActual = nodo.getAttribute("nombre").getValue();
	while (!nombreC.equals(nombrePosActual)){
		i += 1;
		nodo = (Element) listaCiudades.get(i);
		nombrePosActual = nodo.getAttribute("nombre").getValue();
	}
	return (this.getCiudadNumero(i));
}

}
